﻿



using System; 
using System.Collections;
using System.Collections.Generic ;
using System.Runtime.Serialization;

namespace ufida.u9.ait.openapi
{
	/// <summary>
	/// 委外领料行AITDTO DTO :REST自定义的数据传输类型 
	/// 
	/// </summary>
	[DataContract(Namespace = "ufida.u9.ait.openapi")]
	[Serializable]
	public partial class IssueDocLinesAITDTOData  
	{
		/// <summary>
		/// Default Constructor
		/// </summary>
		public IssueDocLinesAITDTOData()
		{
			initData();
		}
		private void initData()
		{
		
		
		
		
		
					StorageType= -1; 
				
		
		
					LineNum= 0; 
				
		
					IssueQty=0m; 
		
		
		
		
		
		
		
					IssuedQtyByWhUOM=0m; 
					IssuedQtyByCoUOM=0m; 
					IssuedQty=0m; 
					Grade= -1; 
							Element= -1; 
				

			//调用默认值初始化服务进行配置方式初始化
			UFSoft.UBF.Service.DTOService.InitConfigDefault(this);
		}
		[System.Runtime.Serialization.OnDeserializing]
		internal void OnDeserializing(System.Runtime.Serialization.StreamingContext context)
		{
			 initData();
		}
		#region Do SerializeKey -ForDTODataType
		//只为处理集合型EntityKey。原因集合型EntityKey由于使用臫的集合对象，无法实现数据共享.-UBF专用.
		public void DoSerializeKeyList(IDictionary dict)
		{
			if (dict == null ) dict = new Hashtable() ;
			if (dict[this] != null)
				return ;
			dict[this] = this;
	        			if (this.PMIssueDocAITDTO != null) 
			{
				this.PMIssueDocAITDTO.DoSerializeKeyList(dict);
			}
	        			if (this.WhUOM != null) 
			{
				this.WhUOM.DoSerializeKeyList(dict);
			}
	        			if (this.Wh != null) 
			{
				this.Wh.DoSerializeKeyList(dict);
			}
	        			if (this.SubconstractSupplier != null) 
			{
				this.SubconstractSupplier.DoSerializeKeyList(dict);
			}
	        			if (this.SubconstractItem != null) 
			{
				this.SubconstractItem.DoSerializeKeyList(dict);
			}
	        	        			if (this.POPick != null) 
			{
				this.POPick.DoSerializeKeyList(dict);
			}
	        			if (this.POLine != null) 
			{
				this.POLine.DoSerializeKeyList(dict);
			}
	        			if (this.OwnerOrg != null) 
			{
				this.OwnerOrg.DoSerializeKeyList(dict);
			}
	        	        			if (this.Item != null) 
			{
				this.Item.DoSerializeKeyList(dict);
			}
	        			if (this.IssueUOM != null) 
			{
				this.IssueUOM.DoSerializeKeyList(dict);
			}
	        	        			if (this.Currency != null) 
			{
				this.Currency.DoSerializeKeyList(dict);
			}
	        			if (this.CostField != null) 
			{
				this.CostField.DoSerializeKeyList(dict);
			}
	        			if (this.BenifitOrg != null) 
			{
				this.BenifitOrg.DoSerializeKeyList(dict);
			}
	        			if (this.RecedeIssueSourceLine != null) 
			{
				this.RecedeIssueSourceLine.DoSerializeKeyList(dict);
			}
	        			if (this.DescFlexField != null) 
			{
				this.DescFlexField.DoSerializeKeyList(dict);
			}
	        	        			if (this.Bin != null) 
			{
				this.Bin.DoSerializeKeyList(dict);
			}
	        	        	        	        	        	        			if (this.IssueDept != null) 
			{
				this.IssueDept.DoSerializeKeyList(dict);
			}

		}
		#endregion 
		/// <summary>
		/// Constructor Full Argument
		/// </summary>
		public IssueDocLinesAITDTOData(  ufida.u9.ait.openapi.PMIssueDocAITDTOData pMIssueDocAITDTO  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData whUOM  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData wh  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData subconstractSupplier  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData subconstractItem  , System.Int32 storageType  , ufida.u9.ait.openapi.CopyOfSrcDocInfoData pOPick  , ufida.u9.ait.openapi.CopyOfSrcDocInfoData pOLine  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData ownerOrg  , System.Int32 lineNum  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData item  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData issueUOM  , System.Decimal issueQty  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData currency  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData costField  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData benifitOrg  , ufida.u9.ait.openapi.CopyOfSrcDocInfoData recedeIssueSourceLine  , ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData descFlexField  , System.String lotNo  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData bin  , System.Decimal issuedQtyByWhUOM  , System.Decimal issuedQtyByCoUOM  , System.Decimal issuedQty  , System.Int32 grade  , System.Int32 element  , ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData issueDept  )
		{
			initData();
			this.PMIssueDocAITDTO = pMIssueDocAITDTO;
			this.WhUOM = whUOM;
			this.Wh = wh;
			this.SubconstractSupplier = subconstractSupplier;
			this.SubconstractItem = subconstractItem;
			this.StorageType = storageType;
			this.POPick = pOPick;
			this.POLine = pOLine;
			this.OwnerOrg = ownerOrg;
			this.LineNum = lineNum;
			this.Item = item;
			this.IssueUOM = issueUOM;
			this.IssueQty = issueQty;
			this.Currency = currency;
			this.CostField = costField;
			this.BenifitOrg = benifitOrg;
			this.RecedeIssueSourceLine = recedeIssueSourceLine;
			this.DescFlexField = descFlexField;
			this.LotNo = lotNo;
			this.Bin = bin;
			this.IssuedQtyByWhUOM = issuedQtyByWhUOM;
			this.IssuedQtyByCoUOM = issuedQtyByCoUOM;
			this.IssuedQty = issuedQty;
			this.Grade = grade;
			this.Element = element;
			this.IssueDept = issueDept;
		}
		#region System Fields 
		//--系统字段,目前没有.EntityData上有相应的字段,用于保存相关的实体状态信息,DTO上没有状态信息.	
		#endregion
		
		#region DTO Properties 
	
		

		/// <summary>
		/// 委外领料AITDTO
		/// 委外领料行AITDTO.Misc.委外领料AITDTO
		/// </summary>
		private ufida.u9.ait.openapi.PMIssueDocAITDTOData m_pMIssueDocAITDTO ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.PMIssueDocAITDTOData PMIssueDocAITDTO
		{
			get	
			{	
				return m_pMIssueDocAITDTO ;
			}
			set	
			{	
				m_pMIssueDocAITDTO = value ;	
			}
		}
			
		

		/// <summary>
		/// 库存单位
		/// 委外领料行AITDTO.Misc.库存单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_whUOM ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData WhUOM
		{
			get	
			{	
				return m_whUOM ;
			}
			set	
			{	
				m_whUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 仓库
		/// 委外领料行AITDTO.Misc.仓库
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_wh ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Wh
		{
			get	
			{	
				return m_wh ;
			}
			set	
			{	
				m_wh = value ;	
			}
		}
			
		

		/// <summary>
		/// 委外供应商
		/// 委外领料行AITDTO.Misc.委外供应商
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_subconstractSupplier ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData SubconstractSupplier
		{
			get	
			{	
				return m_subconstractSupplier ;
			}
			set	
			{	
				m_subconstractSupplier = value ;	
			}
		}
			
		

		/// <summary>
		/// 委外料品
		/// 委外领料行AITDTO.Misc.委外料品
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_subconstractItem ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData SubconstractItem
		{
			get	
			{	
				return m_subconstractItem ;
			}
			set	
			{	
				m_subconstractItem = value ;	
			}
		}
			
		

		/// <summary>
		/// 存储类型
		/// 委外领料行AITDTO.Misc.存储类型
		/// </summary>
		private System.Int32 m_storageType ;
		[DataMember(IsRequired=false)]
		public System.Int32 StorageType
		{
			get	
			{	
				return m_storageType ;
			}
			set	
			{	
				m_storageType = value ;	
			}
		}
			
		

		/// <summary>
		/// 委外备料行
		/// 委外领料行AITDTO.Misc.委外备料行
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfSrcDocInfoData m_pOPick ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfSrcDocInfoData POPick
		{
			get	
			{	
				return m_pOPick ;
			}
			set	
			{	
				m_pOPick = value ;	
			}
		}
			
		

		/// <summary>
		/// 委外行
		/// 委外领料行AITDTO.Misc.委外行
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfSrcDocInfoData m_pOLine ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfSrcDocInfoData POLine
		{
			get	
			{	
				return m_pOLine ;
			}
			set	
			{	
				m_pOLine = value ;	
			}
		}
			
		

		/// <summary>
		/// 所属组织
		/// 委外领料行AITDTO.Misc.所属组织
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_ownerOrg ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData OwnerOrg
		{
			get	
			{	
				return m_ownerOrg ;
			}
			set	
			{	
				m_ownerOrg = value ;	
			}
		}
			
		

		/// <summary>
		/// 行号
		/// 委外领料行AITDTO.Misc.行号
		/// </summary>
		private System.Int32 m_lineNum ;
		[DataMember(IsRequired=false)]
		public System.Int32 LineNum
		{
			get	
			{	
				return m_lineNum ;
			}
			set	
			{	
				m_lineNum = value ;	
			}
		}
			
		

		/// <summary>
		/// 料品
		/// 委外领料行AITDTO.Misc.料品
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_item ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Item
		{
			get	
			{	
				return m_item ;
			}
			set	
			{	
				m_item = value ;	
			}
		}
			
		

		/// <summary>
		/// 发料单位
		/// 委外领料行AITDTO.Misc.发料单位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_issueUOM ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData IssueUOM
		{
			get	
			{	
				return m_issueUOM ;
			}
			set	
			{	
				m_issueUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 发料数量
		/// 委外领料行AITDTO.Misc.发料数量
		/// </summary>
		private System.Decimal m_issueQty ;
		[DataMember(IsRequired=false)]
		public System.Decimal IssueQty
		{
			get	
			{	
				return m_issueQty ;
			}
			set	
			{	
				m_issueQty = value ;	
			}
		}
			
		

		/// <summary>
		/// 币种
		/// 委外领料行AITDTO.Misc.币种
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_currency ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Currency
		{
			get	
			{	
				return m_currency ;
			}
			set	
			{	
				m_currency = value ;	
			}
		}
			
		

		/// <summary>
		/// 成本域
		/// 委外领料行AITDTO.Misc.成本域
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_costField ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData CostField
		{
			get	
			{	
				return m_costField ;
			}
			set	
			{	
				m_costField = value ;	
			}
		}
			
		

		/// <summary>
		/// 受益组织
		/// 委外领料行AITDTO.Misc.受益组织
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_benifitOrg ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData BenifitOrg
		{
			get	
			{	
				return m_benifitOrg ;
			}
			set	
			{	
				m_benifitOrg = value ;	
			}
		}
			
		

		/// <summary>
		/// 退料源领料单明细
		/// 委外领料行AITDTO.Misc.退料源领料单明细
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfSrcDocInfoData m_recedeIssueSourceLine ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfSrcDocInfoData RecedeIssueSourceLine
		{
			get	
			{	
				return m_recedeIssueSourceLine ;
			}
			set	
			{	
				m_recedeIssueSourceLine = value ;	
			}
		}
			
		

		/// <summary>
		/// 实体扩展字段集合
		/// 委外领料行AITDTO.Misc.实体扩展字段集合
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData m_descFlexField ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfDescFlexSegmentsData DescFlexField
		{
			get	
			{	
				return m_descFlexField ;
			}
			set	
			{	
				m_descFlexField = value ;	
			}
		}
			
		

		/// <summary>
		/// 批号
		/// 委外领料行AITDTO.Misc.批号
		/// </summary>
		private System.String m_lotNo ;
		[DataMember(IsRequired=false)]
		public System.String LotNo
		{
			get	
			{	
				return m_lotNo ;
			}
			set	
			{	
				m_lotNo = value ;	
			}
		}
			
		

		/// <summary>
		/// 库位
		/// 委外领料行AITDTO.Misc.库位
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_bin ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData Bin
		{
			get	
			{	
				return m_bin ;
			}
			set	
			{	
				m_bin = value ;	
			}
		}
			
		

		/// <summary>
		/// 实发数量(库存)
		/// 委外领料行AITDTO.Misc.实发数量(库存)
		/// </summary>
		private System.Decimal m_issuedQtyByWhUOM ;
		[DataMember(IsRequired=false)]
		public System.Decimal IssuedQtyByWhUOM
		{
			get	
			{	
				return m_issuedQtyByWhUOM ;
			}
			set	
			{	
				m_issuedQtyByWhUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 实发数量(成本)
		/// 委外领料行AITDTO.Misc.实发数量(成本)
		/// </summary>
		private System.Decimal m_issuedQtyByCoUOM ;
		[DataMember(IsRequired=false)]
		public System.Decimal IssuedQtyByCoUOM
		{
			get	
			{	
				return m_issuedQtyByCoUOM ;
			}
			set	
			{	
				m_issuedQtyByCoUOM = value ;	
			}
		}
			
		

		/// <summary>
		/// 实发数量
		/// 委外领料行AITDTO.Misc.实发数量
		/// </summary>
		private System.Decimal m_issuedQty ;
		[DataMember(IsRequired=false)]
		public System.Decimal IssuedQty
		{
			get	
			{	
				return m_issuedQty ;
			}
			set	
			{	
				m_issuedQty = value ;	
			}
		}
			
		

		/// <summary>
		/// 等级
		/// 委外领料行AITDTO.Misc.等级
		/// </summary>
		private System.Int32 m_grade ;
		[DataMember(IsRequired=false)]
		public System.Int32 Grade
		{
			get	
			{	
				return m_grade ;
			}
			set	
			{	
				m_grade = value ;	
			}
		}
			
		

		/// <summary>
		/// 成分
		/// 委外领料行AITDTO.Misc.成分
		/// </summary>
		private System.Int32 m_element ;
		[DataMember(IsRequired=false)]
		public System.Int32 Element
		{
			get	
			{	
				return m_element ;
			}
			set	
			{	
				m_element = value ;	
			}
		}
			
		

		/// <summary>
		/// 部门
		/// 委外领料行AITDTO.Misc.部门
		/// </summary>
		private ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData m_issueDept ;
		[DataMember(IsRequired=false)]
		public ufida.u9.ait.openapi.CopyOfCommonArchiveDataDTOData IssueDept
		{
			get	
			{	
				return m_issueDept ;
			}
			set	
			{	
				m_issueDept = value ;	
			}
		}
			
		#endregion	

		#region Multi_Fields
																																																				
		#endregion 
	} 	
}
